// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'
import BaseClass from '@api/base/model/EventInfoDto'
import API from './API'

const WORD = '应急事件'

// ============================== 导出状态集 ============================== //

export default {
  // —————————————————————————————— 常量状态 —————————————————————————————— //

  /**
   * 接口
   */
  API: {
    MENU: ['__新增__', WORD], // 菜单
    ...API,
  },

  /**
   * 映射
   */
  MAP: {
    WORD, // 词语
    ADD: '创建', // 新增

    /**
     * 事件转档案的键名列表
     */
    KEY_LIST: [
      'eventLevelCode',
      'eventLevelName',
      'eventTypeId',
      'eventTypeName',
      'generateTime',
      'handleTime',
      'finishTime',
      'handleDuration',
      'areaId',
      'areaName',
      'lon',
      'lat',
      'alt',
      'fileInfoDtos',
      'handleUserId',
      'handleUserName',
      'handleUserPhone',
      'emergencyPlanId',
      'eventMemberDtos',
      'eventSupplyDtos',
    ],
  },

  /**
   * 字典
   */
  DICT: {
    /**
     * 等级
     */
    LEVEL: [
      [1, '一般', '', '蓝'],
      [2, '重大', '', '金'],
      [3, '紧急', '', '红'],
    ],
  },

  /**
   * 首要开关
   *
   * 1. 初始化完成时调用
   * 2. 提交后刷新时调用
   */
  MAIN_START: '', // 'startInfo' 或 'startList' 或 'startOne' 或 ''

  /**
   * 初始单项
   *
   * 1. 初始存在，才能响应
   * 2. setOne() 合并时使用
   * 3. openAdd() 新增时使用
   */
  INIT_ONE: CORE.initObj(BaseClass, {
    eventDataType: 1, // 事件数据类型 1事件 2事件档案
    handleStatus: 2, // 状态 处置中
    duringText: '',
    imageList: [], // 图片列表
    videoList: [], // 视频列表
  }),
}
